home *** CD-ROM | disk | FTP | other *** search
/ The X-Philes (2nd Revision) / The X-Philes Number 1 (1995).iso / xphiles / hp48_2 / edir101 < prev    next >
Internet Message Format  |  1995-03-31  |  5KB

  1. Path: seq!spell
  2. From: Kevin Jessup <bbwwbb@mixcom.COM>
  3. Subject:  v01i014:  edir101 - Edir v1.01: extended directory listing, Part01/01
  4. Newsgroups: comp.sources.hp48
  5. Followup-To: comp.sys.hp48
  6. Approved: spell@seq.uncwil.edu
  7.  
  8. Checksum: 3282900046 (verify with brik -cv)
  9.  
  10. Submitted-by: Kevin Jessup <bbwwbb@mixcom.COM>
  11. Posting-number: Volume 1, Issue 14
  12. Archive-name: edir101/part01
  13.  
  14. BEGIN_DOC edir.doc
  15. *****************************************************************************
  16. *                         EDIR Version 1.01                                 *
  17. *      Documentation and program listings for the HP48SX EDIR utility.      *
  18. *           Submitted to comp.sources.hp48 on August 6th, 1991              *
  19. *****************************************************************************
  20.  
  21. This version handles ALL HP48SX object types including
  22. those not described in the manual.  The display is
  23. the same as in the original version.  This version also
  24. uses Bill Wickes PRESERVE program which is included here.
  25.  
  26. EDIR is a program that provides an extended directory
  27. listing of all variables within the directory from
  28. which it is run.  The variable name is displayed,
  29. followed by the variable type and it's size in bytes.
  30.  
  31. The program output is a graphics object that is then
  32. made available using the graphics application viewer.
  33.  
  34. Use the UP and DOWN arrows to move through the list.
  35. Use right shift (blue) followed by the UP or DOWN
  36. arrows to rapidly reach the top or bottom of the
  37. display as needed.  The last item displayed is a total
  38. byte count for all objects in the current directory.
  39. Hit ON when you are finished viewing to exit the
  40. graphics application and clear the graphic object from
  41. memory.
  42.  
  43. It may take a couple of minutes to build the graphics
  44. object if you have a large directory.
  45.  
  46. You should have about 6000 bytes of free memory for
  47. this program to run with a relatively large directory.
  48. The larger the directory, the more memory required to
  49. build the graphics object.  If you don't have enough
  50. memory, you'll find out about it as the program builds
  51. the graphic.  No damage will occur.  Just delete any
  52. garbage on the stack.
  53.  
  54. I wrote this program as an enhancement to the REVIEW
  55. key when used to review a user directory.  I wish the
  56. review key did what this program does.  Too bad the
  57. EDIR program is such a run-time memory hog!  Those
  58. lucky enough to have a RAM expansion card will probably
  59. use it occaisionally.  If you don't, please note that
  60. the 48SX PURGE command has always been a solid performer!
  61.  
  62. Note that the program listings were generated with the
  63. 48SX translate code set equal to 3.
  64.  
  65. Warranties and Support
  66. ----------------------
  67. None provided.  Programs are supplied AS IS.  This is freeware.
  68. Send comments, guffaws, death-threats, donations, government grants, etc.
  69. to...
  70.  
  71. Kevin Jessup
  72. 9118 N. 85th St.
  73. Milwaukee, WI 53224
  74. Email address: bbwwbb@mixcom.com
  75.  
  76. END_DOC
  77.  
  78. *****************************************************
  79. Program name: TYPSTRS (a list of object type strings)
  80. Checksum:     B1A9 hex
  81. Size:         365.5
  82. Function:     This is a list used by EDIR to get a
  83.               textual description of the object type.
  84. Listing:
  85.  
  86. BYTES:  #B1A9h    365.5
  87. BEGIN_RPL typstrs
  88. %%HP: T(3)A(R)F(.);
  89. { "real" "complex"
  90. "string"
  91. "real array"
  92. "complex array"
  93. "list" "global"
  94. "local" "program"
  95. "algebraic"
  96. "binary" "graphic"
  97. "tagged" "unit"
  98. "xlib" "directory"
  99. "library" "backup"
  100. "command"
  101. "function" "sys binary"
  102. "long real"
  103. "long cmplx"
  104. "linked array"
  105. "character" "code"
  106. "library data"
  107. "external" }
  108. END_RPL
  109.  
  110. *****************************************************
  111. Program name: EDIR (extended directory listing)
  112. Checksum:     7D64 hex
  113. Size:         642
  114. Function:     The EDIR utility.  Place EDIR, TYPSTRS
  115.               and PRESERVE (described below) in your
  116.               "HOME" directory.
  117. Listing:
  118.  
  119. BYTES: #7D64h  642
  120. BEGIN_RPL edir
  121. %%HP: T(3)A(R)F(.);
  122. \<<
  123.   \<< STD PICT PURGE
  124. CLLCD "Checking:" 1
  125. DISP { { # 0h
  126.     \<< 0 SWAP \->TAG
  127. OBJ\-> SWAP DROP DUP
  128. " " SWAP + 3 DISP
  129.     \>> } { # 37h
  130.     \<< VTYPE 1 +
  131. TYPSTRS SWAP GET
  132.     \>> } { # 6Ah
  133.     \<< BYTES SWAP
  134. DROP DUP 5 ROLL + 4
  135. ROLLD
  136.     \>> } } VARS DUP
  137. SIZE 6 * 12 + R\->B
  138. # 83h SWAP BLANK
  139. # 83h # 6h BLANK \->
  140. pro var dg bl
  141.     \<< 0 1 var SIZE
  142.       FOR i bl 1 3
  143.         FOR j 'pro'
  144. j GET 1 GETI # 0h 2
  145. \->LIST 3 ROLLD GET
  146. 'var' i GET SWAP
  147. EVAL 1 \->GROB REPL
  148.         NEXT # 0h i
  149. 1 - 6 * R\->B 2 \->LIST
  150. dg SWAP ROT REPL
  151. 'dg' STO
  152.       NEXT dg
  153.     \>> CLLCD DUP
  154. SIZE # 6h - SWAP
  155. DROP # 0h SWAP 2
  156. \->LIST ROT
  157. "TOTAL BYTES USED: "
  158. SWAP \->STR + 1 \->GROB
  159. REPL PICT STO { }
  160. PVIEW PICT PURGE
  161.   \>> PRESERVE
  162. \>>
  163. END_RPL
  164.  
  165. *****************************************************
  166. Program name: PRESERVE
  167. Checksum:     5418 hex
  168. Size:         46.5
  169. Function:     Utility that saves the 48SX flags,
  170.               evaluates an expression and restores
  171.               the flags.
  172. Author:       Bill Wickes
  173. Listing:
  174.  
  175. BYTES: #5418h  46.5
  176. BEGIN_RPL preserve
  177. %%HP: T(3)A(R)F(.);
  178. \<< RCLF \-> f
  179.   \<< EVAL f STOF
  180.   \>>
  181. \>>
  182. END_RPL
  183.  
  184. ********************[END]******************
  185.